『Algebra driven design』
https://gyazo.com/e287b95cc3e67b0014e9b0886c39ab39
2021/5/7
Preface
Foreword by John Hughes
Overview
Abstraction
What is Algebra-Driven Design?
Conventions
A Note on the Companion Library
Designing Algebras
Tiles
Basic Building Blocks
Subdividing Space
Observations
Generalization
What Makes a Good Algebra?
Scavenger Hunt
Input Filters
Simultaneous Challenges
Challenge Completion
Simplification
A Unified Observation
Symmetry
Clues
Generalization
Deriving Implementations
Tile Implementation
The Initial Encoding
Generating Tests
An Efficient Implementation
Scavenger Hunt Implementation
The Filter Algebra
The Challenge Algebra
Testing It
Implementation
Reference Material
Property-Based Testing
Basics
Writing Good Generators
Showing
Shrinking
Using QuickCheck Interactively
Effective QuickSpec
Signatures
Motivating QuickSpec
Background Signatures
Predicates
Naming Variables
Observing Equalities
Creating QuickCheck Tests
Variable Usage
Debugging QuickSpec Output
Common Algebraic Components
Properties
Structures
Back Matter
Acknowledgements
Bibliography
Glossary